
#include "CultureInfo.h"

using namespace Riccsson::System;
using namespace Riccsson::System::Globalization;

PROP3GET_STATIC_INIT(Riccsson::System::Globalization::CultureInfo, GC_PTR<CultureInfo>, CurrentUICulture)
PROP3GET_STATIC_INIT(Riccsson::System::Globalization::CultureInfo, GC_PTR<CultureInfo>, CurrentCulture)
PROP3GET_STATIC_INIT(Riccsson::System::Globalization::CultureInfo, GC_PTR<CultureInfo>, InvariantCulture)
PROP3GET_STATIC_INIT(Riccsson::System::Globalization::CultureInfo, GC_PTR<CultureInfo>, InstalledUICulture)

int Riccsson::System::Globalization::CultureInfo::InvariantCultureId;

volatile GC_PTR<CultureInfo> CultureInfo::invariant_culture_info;
GC_PTR<object> CultureInfo::shared_table_lock;
GC_PTR<CultureInfo> CultureInfo::default_current_culture;


/*const*/ int CultureInfo::CalendarTypeBits;
/*const*/ GC_PTR<string> CultureInfo::MSG_READONLY;

bool CultureInfo::construct_internal_locale_from_lcid (int lcid)
{
	throw;
}
bool CultureInfo::construct_internal_locale_from_name (string* name)
{
	throw;
}
GC_PTR<string> CultureInfo::get_current_locale_name ()
{
	throw;
}
GC_PTR<Array<GC_PTR<CultureInfo>>> CultureInfo::internal_get_cultures (bool neutral, bool specific, bool installed)
{
	throw;
}
void CultureInfo::construct_datetime_format ()
{
	throw;
}
void CultureInfo::construct_number_format ()
{
	throw;
}

REGISTER_CLASS_CPP(CultureInfo)
{
	invariant_culture_info = new CultureInfo (InvariantCultureId, false, true);
	shared_table_lock = new object ();
	default_current_culture = null;
	MSG_READONLY = new string("This instance is read only");

	InvariantCultureId = 0x7F;
	CalendarTypeBits = 8;
}